

#if !defined(ILLEGALSTATEXCEPTION_HEADER_H)
#define ILLEGALSTATEXCEPTION_HEADER_H


#include <exception>
#include <string>
#include <memory>
#include "../utils/common_ptr.h"

class IllegalStateException : public std::exception
{
public:
	IllegalStateException() throw();
	IllegalStateException(string_ptr msg) throw();
	virtual const char *what() const throw();
	virtual ~IllegalStateException() throw();

protected:
	string_ptr m_msg;
};

#endif
